Virtual universes (VUs) are computer-based simulations of the real world where users interact with one another using online identities. These online identities, known as avatars, can be chosen by a user to graphically represent himself within the VU. Once a graphical representation is chosen, the representation is rendered in the VU using a variety of geometry, viewpoint, texture, and lighting information. Objects within the VU are also rendered using similar information.
Three dimensional rendering within a VU allows avatars and objects to appear more realistic. Three dimensional rendering is typically done by assigning a number of coordinates to an object and then calculating how light interacts with the object based on the assigned coordinates. Calculating how light is used within a VU requires a determination of how light gets from one point to another, and how light interacts with different surfaces of the object. The more coordinates that are available, the better the rendering. The quality of a rendering also depends on the type and amount of information that is available to describe an object including the detail, arrangement, and total number of objects used to create the rendering.
While it is possible to continually render everything in a VU at the highest level of enhancement to all users, this produces a very high computation load on a VU's servers. This high computation load is ultimately passed onto the users in the form of slower renderings, slower refresh rates, or a variety of other hindrances. Furthermore, while the high level enhancement renderings may be appreciated in certain circumstances, there are a number of circumstances in which continual high level enhancement renderings are not even noticed by the user. For example, when a user is walking down a street, the user looks in a certain direction. The user's view is limited to a certain peripheral, such as the total view that can be rendered on a computer monitor. Computationally, it would be wasteful to enhance everything surrounding the user when the user can only view a small subset of the surroundings. Additionally, it would be wasteful to enhance everything within the user's subset if, for example, the user is rushing through an area to get to an ultimate destination. Furthermore, it would be wasteful to enhance a number of objects that the user has no preference in viewing enhanced, or to provide an enhanced rendering to users without the hardware requirements to appreciate the rendering. In other words, a number of factors need to be considered when determining the amount of rendering, and when something should be rendered to a user.
Accordingly, there exists a need in the art to overcome the deficiencies and limitations described hereinabove.